home *** CD-ROM | disk | FTP | other *** search
MacBinary | 2000-06-23 | 8.6 KB | [TEXT/CWIE] |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
You can browse this item here: TestFinder.c
Confidence | Program | Detection | Match Type | Support
|
---|
66%
| dexvert
| Compact Compressed (Unix) (archive/compact)
| ext
| Supported |
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, inited, Fri Jun 23 09:34:39 2000, modified Fri Jun 23 09:34:39 2000, creator 'CWIE', type ASCII, 8176 bytes "TestFinder.c" , at 0x2070 410 bytes resource
| default (weak)
| |
99%
| file
| data
| default
| |
74%
| TrID
| Macintosh plain text (MacBinary)
| default
| |
25%
| TrID
| MacBinary 2
| default (weak)
| |
100%
| siegfried
| fmt/1762 MacBinary (II)
| default
| |
100%
| lsar
| MacBinary
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [CWIE] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0c 54 65 73 74 46 69 | 6e 64 65 72 2e 63 00 00 |..TestFi|nder.c..|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 43 57 49 | 45 01 00 00 00 00 00 00 |.TEXTCWI|E.......|
|00000050| 00 00 00 00 00 1f f0 00 | 00 01 9a b5 79 17 ef b5 |........|....y...|
|00000060| 79 17 ef 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |y.......|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 d7 0c 00 00 |........|........|
|00000080| 2f 2a 0d 09 46 69 6c 65 | 3a 09 09 54 65 73 74 46 |/*..File|:..TestF|
|00000090| 69 6e 64 65 72 2e 63 0d | 09 50 72 6f 6a 65 63 74 |inder.c.|.Project|
|000000a0| 3a 09 57 69 6e 43 6f 70 | 79 43 4d 50 6c 75 67 69 |:.WinCop|yCMPlugi|
|000000b0| 6e 0d 09 0d 09 a9 20 32 | 30 30 30 20 44 6f 6e 61 |n..... 2|000 Dona|
|000000c0| 6c 64 20 42 72 6f 77 6e | 0d 09 68 74 74 70 3a 2f |ld Brown|..http:/|
|000000d0| 2f 77 77 77 2e 65 61 6d | 6f 6e 74 61 6c 65 73 2e |/www.eam|ontales.|
|000000e0| 63 6f 6d 0d 09 0d 09 54 | 68 69 73 20 63 6f 64 65 |com....T|his code|
|000000f0| 20 67 65 74 73 20 74 68 | 65 20 76 6f 6c 75 6d 65 | gets th|e volume|
|00000100| 20 61 6e 64 20 64 69 72 | 65 63 74 6f 72 79 20 49 | and dir|ectory I|
|00000110| 44 20 66 6f 72 20 61 20 | 46 69 6e 64 65 72 20 77 |D for a |Finder w|
|00000120| 69 6e 64 6f 77 2e 0d 09 | 43 6f 64 65 20 63 6f 75 |indow...|Code cou|
|00000130| 72 74 65 73 79 20 6f 66 | 20 4c 65 6f 6e 61 72 64 |rtesy of| Leonard|
|00000140| 20 52 6f 73 65 6e 74 68 | 61 6c 0d 09 0d 09 45 6e | Rosenth|al....En|
|00000150| 61 62 6c 65 73 20 63 6f | 70 79 20 61 6e 64 20 70 |ables co|py and p|
|00000160| 61 73 74 65 20 6f 66 20 | 66 69 6c 65 73 20 69 6e |aste of |files in|
|00000170| 20 74 68 65 20 66 69 6e | 64 65 72 0d 09 57 49 54 | the fin|der..WIT|
|00000180| 48 4f 55 54 20 70 61 74 | 63 68 69 6e 67 20 74 72 |HOUT pat|ching tr|
|00000190| 61 70 73 2e 0d 09 0d 09 | 50 65 72 6d 69 73 73 69 |aps.....|Permissi|
|000001a0| 6f 6e 20 69 73 20 67 72 | 61 6e 74 65 64 20 74 6f |on is gr|anted to|
|000001b0| 20 75 73 65 20 77 68 61 | 74 65 76 65 72 20 63 6f | use wha|tever co|
|000001c0| 64 65 20 69 6e 20 68 65 | 72 65 20 74 68 61 74 20 |de in he|re that |
|000001d0| 73 74 72 69 6b 65 73 20 | 79 6f 75 72 20 66 61 6e |strikes |your fan|
|000001e0| 63 79 2c 20 6f 72 20 74 | 6f 20 64 69 73 74 72 69 |cy, or t|o distri|
|000001f0| 62 75 74 65 20 74 68 65 | 20 77 68 6f 6c 65 20 73 |bute the| whole s|
|00000200| 6f 75 72 63 65 20 66 72 | 65 65 6c 79 2e 0d 09 54 |ource fr|eely...T|
|00000210| 68 69 73 20 69 73 20 70 | 72 6f 76 69 64 65 64 20 |his is p|rovided |
|00000220| 77 69 74 68 6f 75 74 20 | 77 61 72 72 61 6e 74 79 |without |warranty|
|00000230| 2c 20 73 6f 20 69 66 20 | 79 6f 75 20 75 73 65 20 |, so if |you use |
|00000240| 69 74 20 61 6e 64 20 61 | 20 6e 75 63 6c 65 61 72 |it and a| nuclear|
|00000250| 20 6d 65 6c 74 64 6f 77 | 6e 20 6f 63 63 75 72 73 | meltdow|n occurs|
|00000260| 2c 20 79 6f 75 20 63 61 | 6e 27 74 20 62 6c 61 6d |, you ca|n't blam|
|00000270| 65 20 6d 65 2e 0d 09 0d | 2a 2f 0d 23 69 6e 63 6c |e me....|*/.#incl|
|00000280| 75 64 65 20 3c 41 45 50 | 61 63 6b 4f 62 6a 65 63 |ude <AEP|ackObjec|
|00000290| 74 2e 68 3e 0d 23 69 6e | 63 6c 75 64 65 20 3c 41 |t.h>.#in|clude <A|
|000002a0| 45 52 65 67 69 73 74 72 | 79 2e 68 3e 0d 23 69 6e |ERegistr|y.h>.#in|
|000002b0| 63 6c 75 64 65 20 3c 41 | 45 4f 62 6a 65 63 74 73 |clude <A|EObjects|
|000002c0| 2e 68 3e 0d 23 69 6e 63 | 6c 75 64 65 20 3c 43 6f |.h>.#inc|lude <Co|
|000002d0| 64 65 46 72 61 67 6d 65 | 6e 74 73 2e 68 3e 0d 23 |deFragme|nts.h>.#|
|000002e0| 69 6e 63 6c 75 64 65 20 | 3c 43 6f 6e 74 65 78 74 |include |<Context|
|000002f0| 75 61 6c 4d 65 6e 75 50 | 6c 75 67 69 6e 73 2e 68 |ualMenuP|lugins.h|
|00000300| 3e 0d 23 69 6e 63 6c 75 | 64 65 20 3c 50 4c 53 74 |>.#inclu|de <PLSt|
|00000310| 72 69 6e 67 46 75 6e 63 | 73 2e 68 3e 0d 23 69 6e |ringFunc|s.h>.#in|
|00000320| 63 6c 75 64 65 20 3c 50 | 72 6f 63 65 73 73 65 73 |clude <P|rocesses|
|00000330| 2e 68 3e 0d 23 69 6e 63 | 6c 75 64 65 20 3c 54 65 |.h>.#inc|lude <Te|
|00000340| 78 74 55 74 69 6c 73 2e | 68 3e 0d 23 69 6e 63 6c |xtUtils.|h>.#incl|
|00000350| 75 64 65 20 3c 53 63 72 | 61 70 2e 68 3e 0d 23 69 |ude <Scr|ap.h>.#i|
|00000360| 6e 63 6c 75 64 65 20 3c | 46 69 6c 65 73 2e 68 3e |nclude <|Files.h>|
|00000370| 0d 23 69 6e 63 6c 75 64 | 65 20 3c 52 65 73 6f 75 |.#includ|e <Resou|
|00000380| 72 63 65 73 2e 68 3e 0d | 23 69 6e 63 6c 75 64 65 |rces.h>.|#include|
|00000390| 20 3c 44 69 61 6c 6f 67 | 73 2e 68 3e 0d 23 69 6e | <Dialog|s.h>.#in|
|000003a0| 63 6c 75 64 65 20 3c 46 | 69 6e 64 65 72 52 65 67 |clude <F|inderReg|
|000003b0| 69 73 74 72 79 2e 68 3e | 0d 23 69 6e 63 6c 75 64 |istry.h>|.#includ|
|000003c0| 65 20 22 54 65 73 74 46 | 69 6e 64 65 72 2e 68 22 |e "TestF|inder.h"|
|000003d0| 0d 0d 2f 2f 20 63 6f 6e | 73 74 61 6e 74 73 20 75 |..// con|stants u|
|000003e0| 73 65 64 20 61 73 20 70 | 61 72 61 6d 65 74 65 72 |sed as p|arameter|
|000003f0| 73 20 66 6f 72 20 74 68 | 65 20 47 65 74 46 69 6e |s for th|e GetFin|
|00000400| 64 65 72 50 72 6f 63 65 | 73 73 20 72 6f 75 74 69 |derProce|ss routi|
|00000410| 6e 65 0d 0d 23 64 65 66 | 69 6e 65 09 6b 41 62 73 |ne..#def|ine.kAbs|
|00000420| 6f 6c 75 74 65 46 69 6e | 64 65 72 50 53 4e 09 66 |oluteFin|derPSN.f|
|00000430| 61 6c 73 65 09 09 09 2f | 2f 20 64 69 73 61 6c 6c |alse.../|/ disall|
|00000440| 6f 77 20 63 6f 6d 70 61 | 72 69 73 6f 6e 20 66 6f |ow compa|rison fo|
|00000450| 72 20 63 75 72 72 65 6e | 74 20 70 72 6f 63 65 73 |r curren|t proces|
|00000460| 73 20 73 65 72 69 61 6c | 20 6e 75 6d 62 65 72 0d |s serial| number.|
|00000470| 23 64 65 66 69 6e 65 09 | 6b 52 65 6c 61 74 69 76 |#define.|kRelativ|
|00000480| 65 46 69 6e 64 65 72 50 | 53 4e 09 74 72 75 65 09 |eFinderP|SN.true.|
|00000490| 09 09 2f 2f 20 61 6c 6c | 6f 77 20 63 6f 6d 70 61 |..// all|ow compa|
|000004a0| 72 69 73 6f 6e 20 66 6f | 72 20 63 75 72 72 65 6e |rison fo|r curren|
|000004b0| 74 20 70 72 6f 63 65 73 | 73 20 73 65 72 69 61 6c |t proces|s serial|
|000004c0| 20 6e 75 6d 62 65 72 0d | 0d 2f 2f 20 46 69 6e 64 | number.|.// Find|
|000004d0| 65 72 20 74 79 70 65 2f | 63 72 65 61 74 6f 72 0d |er type/|creator.|
|000004e0| 0d 23 64 65 66 69 6e 65 | 09 6b 46 69 6e 64 65 72 |.#define|.kFinder|
|000004f0| 54 79 70 65 09 09 09 27 | 46 4e 44 52 27 0d 23 64 |Type...'|FNDR'.#d|
|00000500| 65 66 69 6e 65 09 6b 46 | 69 6e 64 65 72 53 69 67 |efine.kF|inderSig|
|00000510| 6e 61 74 75 72 65 09 27 | 4d 41 43 53 27 0d 0d 73 |nature.'|MACS'..s|
|00000520| 74 61 74 69 63 20 4f 53 | 45 72 72 09 47 65 74 46 |tatic OS|Err.GetF|
|00000530| 69 6e 64 65 72 50 72 6f | 63 65 73 73 20 28 50 72 |inderPro|cess (Pr|
|00000540| 6f 63 65 73 73 53 65 72 | 69 61 6c 4e 75 6d 62 65 |ocessSer|ialNumbe|
|00000550| 72 20 2a 66 69 6e 64 65 | 72 70 73 6e 2c 20 42 6f |r *finde|rpsn, Bo|
|00000560| 6f 6c 65 61 6e 20 73 68 | 6f 72 74 63 75 74 29 0d |olean sh|ortcut).|
|00000570| 0d 2f 2a 09 41 20 72 6f | 75 74 69 6e 65 20 74 6f |./*.A ro|utine to|
|00000580| 20 64 65 74 65 72 6d 69 | 6e 65 20 74 68 65 20 70 | determi|ne the p|
|00000590| 72 6f 63 65 73 73 20 73 | 65 72 69 61 6c 20 6e 75 |rocess s|erial nu|
|000005a0| 6d 62 65 72 20 6f 66 20 | 74 68 65 20 46 69 6e 64 |mber of |the Find|
|000005b0| 65 72 2e 20 49 74 20 72 | 65 74 75 72 6e 73 20 74 |er. It r|eturns t|
|000005c0| 68 65 20 72 65 73 75 6c | 74 20 61 73 20 61 0d 09 |he resul|t as a..|
|000005d0| 70 61 72 61 6d 65 74 65 | 72 20 70 61 73 73 65 64 |paramete|r passed|
|000005e0| 20 62 79 20 72 65 66 65 | 72 65 6e 63 65 2e 20 49 | by refe|rence. I|
|000005f0| 74 20 61 6c 73 6f 20 68 | 61 73 20 61 20 42 6f 6f |t also h|as a Boo|
|00000600| 6c 65 61 6e 20 70 61 72 | 61 6d 65 74 65 72 20 77 |lean par|ameter w|
|00000610| 68 69 63 68 20 73 70 65 | 63 69 66 69 65 73 20 77 |hich spe|cifies w|
|00000620| 68 65 74 68 65 72 20 6f | 72 20 6e 6f 74 0d 09 74 |hether o|r not..t|
|00000630| 68 65 20 72 65 74 75 72 | 6e 65 64 20 70 72 6f 63 |he retur|ned proc|
|00000640| 65 73 73 20 73 65 72 69 | 61 6c 20 6e 75 6d 62 65 |ess seri|al numbe|
|00000650| 72 20 77 69 6c 6c 20 72 | 65 70 72 65 73 65 6e 74 |r will r|epresent|
|00000660| 20 74 68 65 20 46 69 6e | 64 65 72 20 70 72 6f 63 | the Fin|der proc|
|00000670| 65 73 73 20 73 65 72 69 | 61 6c 20 6e 75 6d 62 65 |ess seri|al numbe|
|00000680| 72 20 61 73 0d 09 22 6b | 43 75 72 72 65 6e 74 50 |r as.."k|CurrentP|
|00000690| 72 6f 63 65 73 73 22 20 | 69 66 20 69 74 20 69 73 |rocess" |if it is|
|000006a0| 20 74 68 65 20 63 75 72 | 72 65 6e 74 20 70 72 6f | the cur|rent pro|
|000006b0| 63 65 73 73 20 74 6f 20 | 61 6c 6c 6f 77 20 61 20 |cess to |allow a |
|000006c0| 73 68 6f 72 74 63 75 74 | 20 6f 66 20 74 68 65 20 |shortcut| of the |
|000006d0| 5f 47 65 74 4e 65 78 74 | 45 76 65 6e 74 20 63 61 |_GetNext|Event ca|
|000006e0| 6c 6c 0d 09 64 65 70 65 | 6e 64 65 6e 63 69 65 73 |ll..depe|ndencies|
|000006f0| 20 6f 66 20 70 72 6f 63 | 65 73 73 69 6e 67 20 61 | of proc|essing a|
|00000700| 6e 20 41 70 70 6c 65 45 | 76 65 6e 74 2e 0d 0d 09 |n AppleE|vent....|
|00000710| 20 49 6e 70 75 74 3a 09 | 73 68 6f 72 74 63 75 74 | Input:.|shortcut|
|00000720| 20 2d 20 61 6c 6c 6f 77 | 20 22 6b 43 75 72 72 65 | - allow| "kCurre|
|00000730| 6e 74 50 72 6f 63 65 73 | 73 22 20 74 6f 20 62 65 |ntProces|s" to be|
|00000740| 20 75 73 65 64 20 69 66 | 20 77 65 20 61 72 65 20 | used if| we are |
|00000750| 69 6e 20 74 68 65 20 63 | 75 72 72 65 6e 74 20 70 |in the c|urrent p|
|00000760| 72 6f 63 65 73 73 2e 0d | 09 20 49 6e 70 75 74 3a |rocess..|. Input:|
|00000770| 09 2a 66 69 6e 64 65 72 | 70 73 6e 20 2d 20 72 65 |.*finder|psn - re|
|00000780| 73 75 6c 74 20 50 72 6f | 63 65 73 73 53 65 72 69 |sult Pro|cessSeri|
|00000790| 61 6c 4e 75 6d 62 65 72 | 20 70 61 73 73 65 64 20 |alNumber| passed |
|000007a0| 62 79 20 72 65 66 65 72 | 65 6e 63 65 2e 0d 0d 09 |by refer|ence....|
|000007b0| 4f 75 74 70 75 74 3a 09 | 65 72 72 6f 72 20 63 6f |Output:.|error co|
|000007c0| 64 65 20 74 68 61 74 20 | 6f 63 63 75 72 65 64 2e |de that |occured.|
|000007d0| 20 2a 2f 0d 0d 7b 0d 09 | 42 6f 6f 6c 65 61 6e 09 | */..{..|Boolean.|
|000007e0| 09 09 09 72 65 73 75 6c | 74 3b 0d 09 50 72 6f 63 |...resul|t;..Proc|
|000007f0| 65 73 73 53 65 72 69 61 | 6c 4e 75 6d 62 65 72 09 |essSeria|lNumber.|
|00000800| 70 73 6e 2c 20 63 75 72 | 72 65 6e 74 70 73 6e 3b |psn, cur|rentpsn;|
|00000810| 0d 09 50 72 6f 63 65 73 | 73 49 6e 66 6f 52 65 63 |..Proces|sInfoRec|
|00000820| 09 09 70 69 72 3b 0d 0d | 09 70 73 6e 2e 68 69 67 |..pir;..|.psn.hig|
|00000830| 68 4c 6f 6e 67 4f 66 50 | 53 4e 20 3d 20 30 3b 0d |hLongOfP|SN = 0;.|
|00000840| 09 70 73 6e 2e 6c 6f 77 | 4c 6f 6e 67 4f 66 50 53 |.psn.low|LongOfPS|
|00000850| 4e 20 3d 20 6b 4e 6f 50 | 72 6f 63 65 73 73 3b 0d |N = kNoP|rocess;.|
|00000860| 09 70 69 72 2e 70 72 6f | 63 65 73 73 49 6e 66 6f |.pir.pro|cessInfo|
|00000870| 4c 65 6e 67 74 68 20 3d | 20 73 69 7a 65 6f 66 28 |Length =| sizeof(|
|00000880| 50 72 6f 63 65 73 73 49 | 6e 66 6f 52 65 63 29 3b |ProcessI|nfoRec);|
|00000890| 0d 09 70 69 72 2e 70 72 | 6f 63 65 73 73 4e 61 6d |..pir.pr|ocessNam|
|000008a0| 65 20 3d 20 6e 69 6c 3b | 09 09 09 2f 2f 20 64 6f |e = nil;|...// do|
|000008b0| 6e 27 74 20 77 61 6e 74 | 20 74 68 65 73 65 20 62 |n't want| these b|
|000008c0| 69 74 73 20 6f 66 20 69 | 6e 66 6f 72 6d 61 74 69 |its of i|nformati|
|000008d0| 6f 6e 0d 09 70 69 72 2e | 70 72 6f 63 65 73 73 41 |on..pir.|processA|
|000008e0| 70 70 53 70 65 63 20 3d | 20 6e 69 6c 3b 0d 09 77 |ppSpec =| nil;..w|
|000008f0| 68 69 6c 65 20 28 47 65 | 74 4e 65 78 74 50 72 6f |hile (Ge|tNextPro|
|00000900| 63 65 73 73 28 26 70 73 | 6e 29 20 3d 3d 20 6e 6f |cess(&ps|n) == no|
|00000910| 45 72 72 29 20 0d 09 09 | 69 66 20 28 47 65 74 50 |Err) ...|if (GetP|
|00000920| 72 6f 63 65 73 73 49 6e | 66 6f 72 6d 61 74 69 6f |rocessIn|formatio|
|00000930| 6e 28 26 70 73 6e 2c 20 | 26 70 69 72 29 20 3d 3d |n(&psn, |&pir) ==|
|00000940| 20 6e 6f 45 72 72 29 20 | 0d 09 09 09 69 66 20 28 | noErr) |....if (|
|00000950| 28 70 69 72 2e 70 72 6f | 63 65 73 73 54 79 70 65 |(pir.pro|cessType|
|00000960| 20 3d 3d 20 6b 46 69 6e | 64 65 72 54 79 70 65 29 | == kFin|derType)|
|00000970| 20 26 26 20 28 70 69 72 | 2e 70 72 6f 63 65 73 73 | && (pir|.process|
|00000980| 53 69 67 6e 61 74 75 72 | 65 20 3d 3d 20 6b 46 69 |Signatur|e == kFi|
|00000990| 6e 64 65 72 53 69 67 6e | 61 74 75 72 65 29 29 20 |nderSign|ature)) |
|000009a0| 0d 09 09 09 7b 0d 09 09 | 09 09 69 66 20 28 73 68 |....{...|..if (sh|
|000009b0| 6f 72 74 63 75 74 20 26 | 26 20 28 47 65 74 43 75 |ortcut &|& (GetCu|
|000009c0| 72 72 65 6e 74 50 72 6f | 63 65 73 73 28 26 63 75 |rrentPro|cess(&cu|
|000009d0| 72 72 65 6e 74 70 73 6e | 29 20 3d 3d 20 6e 6f 45 |rrentpsn|) == noE|
|000009e0| 72 72 29 20 26 26 20 0d | 09 09 09 09 09 28 53 61 |rr) && .|.....(Sa|
|000009f0| 6d 65 50 72 6f 63 65 73 | 73 28 26 63 75 72 72 65 |meProces|s(&curre|
|00000a00| 6e 74 70 73 6e 2c 20 26 | 70 73 6e 2c 20 26 72 65 |ntpsn, &|psn, &re|
|00000a10| 73 75 6c 74 29 20 3d 3d | 20 6e 6f 45 72 72 29 20 |sult) ==| noErr) |
|00000a20| 26 26 20 72 65 73 75 6c | 74 29 20 0d 09 09 09 09 |&& resul|t) .....|
|00000a30| 7b 09 09 09 2f 2f 20 75 | 73 65 20 74 68 65 20 63 |{...// u|se the c|
|00000a40| 75 72 72 65 6e 74 20 70 | 72 6f 63 65 73 73 20 74 |urrent p|rocess t|
|00000a50| 6f 20 73 68 6f 72 74 63 | 75 74 20 74 68 65 20 65 |o shortc|ut the e|
|00000a60| 76 65 6e 74 20 64 69 73 | 70 61 74 63 68 69 6e 67 |vent dis|patching|
|00000a70| 0d 09 09 09 09 09 66 69 | 6e 64 65 72 70 73 6e 2d |......fi|nderpsn-|
|00000a80| 3e 68 69 67 68 4c 6f 6e | 67 4f 66 50 53 4e 20 3d |>highLon|gOfPSN =|
|00000a90| 20 30 3b 0d 09 09 09 09 | 09 66 69 6e 64 65 72 70 | 0;.....|.finderp|
|00000aa0| 73 6e 2d 3e 6c 6f 77 4c | 6f 6e 67 4f 66 50 53 4e |sn->lowL|ongOfPSN|
|00000ab0| 20 3d 20 6b 43 75 72 72 | 65 6e 74 50 72 6f 63 65 | = kCurr|entProce|
|00000ac0| 73 73 3b 0d 09 09 09 09 | 7d 0d 09 09 09 09 65 6c |ss;.....|}.....el|
|00000ad0| 73 65 0d 09 09 09 09 09 | 2a 66 69 6e 64 65 72 70 |se......|*finderp|
|00000ae0| 73 6e 20 3d 20 70 73 6e | 3b 09 09 09 2f 2f 20 66 |sn = psn|;...// f|
|00000af0| 6f 75 6e 64 20 74 68 65 | 20 46 69 6e 64 65 72 27 |ound the| Finder'|
|00000b00| 73 20 70 73 6e 0d 09 09 | 09 09 72 65 74 75 72 6e |s psn...|..return|
|00000b10| 28 6e 6f 45 72 72 29 3b | 09 09 09 2f 2f 20 67 6f |(noErr);|...// go|
|00000b20| 74 20 74 68 65 20 70 72 | 6f 63 65 73 73 20 73 65 |t the pr|ocess se|
|00000b30| 72 69 61 6c 20 6e 75 6d | 62 65 72 0d 09 09 09 7d |rial num|ber....}|
|00000b40| 0d 09 72 65 74 75 72 6e | 28 70 72 6f 63 4e 6f 74 |..return|(procNot|
|00000b50| 46 6f 75 6e 64 29 3b 09 | 09 09 2f 2f 20 67 6f 74 |Found);.|..// got|
|00000b60| 20 61 6e 20 65 72 72 6f | 72 20 2d 20 6e 6f 74 20 | an erro|r - not |
|00000b70| 66 6f 75 6e 64 0d 7d 0d | 0d 73 74 61 74 69 63 20 |found.}.|.static |
|00000b80| 42 6f 6f 6c 65 61 6e 09 | 49 73 52 65 6c 61 74 69 |Boolean.|IsRelati|
|00000b90| 76 65 50 72 6f 63 65 73 | 73 53 65 72 69 61 6c 4e |veProces|sSerialN|
|00000ba0| 75 6d 62 65 72 20 28 50 | 72 6f 63 65 73 73 53 65 |umber (P|rocessSe|
|00000bb0| 72 69 61 6c 4e 75 6d 62 | 65 72 20 2a 70 73 6e 29 |rialNumb|er *psn)|
|00000bc0| 0d 0d 2f 2a 09 41 20 73 | 69 6d 70 6c 65 20 72 6f |../*.A s|imple ro|
|00000bd0| 75 74 69 6e 65 20 77 68 | 69 63 68 20 64 65 74 65 |utine wh|ich dete|
|00000be0| 72 6d 69 6e 65 73 20 77 | 68 65 74 68 65 72 20 74 |rmines w|hether t|
|00000bf0| 68 65 20 70 72 6f 63 65 | 73 73 20 73 65 72 69 61 |he proce|ss seria|
|00000c00| 6c 20 6e 75 6d 62 65 72 | 20 67 69 76 65 6e 20 69 |l number| given i|
|00000c10| 73 20 61 20 72 65 6c 61 | 74 69 76 65 20 6f 6e 65 |s a rela|tive one|
|00000c20| 2e 0d 09 54 68 69 73 20 | 6d 65 61 6e 73 20 74 68 |...This |means th|
|00000c30| 61 74 20 69 74 20 69 73 | 6e 27 74 20 61 20 6e 75 |at it is|n't a nu|
|00000c40| 6d 62 65 72 20 77 68 69 | 63 68 20 72 65 66 65 72 |mber whi|ch refer|
|00000c50| 73 20 74 6f 20 74 68 65 | 20 70 72 6f 63 65 73 73 |s to the| process|
|00000c60| 20 6f 75 74 72 69 67 68 | 74 20 62 75 74 20 72 61 | outrigh|t but ra|
|00000c70| 74 68 65 72 20 72 65 66 | 65 72 73 20 74 6f 20 74 |ther ref|ers to t|
|00000c80| 68 65 0d 09 70 72 6f 63 | 65 73 73 20 62 65 63 61 |he..proc|ess beca|
|00000c90| 75 73 65 20 69 74 27 73 | 20 63 75 72 72 65 6e 74 |use it's| current|
|00000ca0| 2e 0d 0d 09 20 49 6e 70 | 75 74 3a 20 70 73 6e 20 |.... Inp|ut: psn |
|00000cb0| 2d 20 74 68 65 20 50 72 | 6f 63 65 73 73 53 65 72 |- the Pr|ocessSer|
|00000cc0| 69 61 6c 4e 75 6d 62 65 | 72 20 74 6f 20 63 68 65 |ialNumbe|r to che|
|00000cd0| 63 6b 2e 0d 0d 09 4f 75 | 74 70 75 74 3a 20 42 6f |ck....Ou|tput: Bo|
|00000ce0| 6f 6c 65 61 6e 20 72 65 | 73 75 6c 74 2e 20 2a 2f |olean re|sult. */|
|00000cf0| 0d 0d 7b 0d 09 72 65 74 | 75 72 6e 28 28 70 73 6e |..{..ret|urn((psn|
|00000d00| 2d 3e 68 69 67 68 4c 6f | 6e 67 4f 66 50 53 4e 20 |->highLo|ngOfPSN |
|00000d10| 3d 3d 20 30 29 20 26 26 | 20 28 70 73 6e 2d 3e 6c |== 0) &&| (psn->l|
|00000d20| 6f 77 4c 6f 6e 67 4f 66 | 50 53 4e 20 3d 3d 20 6b |owLongOf|PSN == k|
|00000d30| 43 75 72 72 65 6e 74 50 | 72 6f 63 65 73 73 29 29 |CurrentP|rocess))|
|00000d40| 3b 0d 7d 0d 0d 23 64 65 | 66 69 6e 65 20 45 72 72 |;.}..#de|fine Err|
|00000d50| 6f 72 45 78 69 74 28 65 | 72 72 6f 72 29 09 69 66 |orExit(e|rror).if|
|00000d60| 20 28 65 72 72 6f 72 29 | 09 67 6f 74 6f 20 65 78 | (error)|.goto ex|
|00000d70| 69 74 3b 0d 0d 4f 53 45 | 72 72 09 47 65 74 53 63 |it;..OSE|rr.GetSc|
|00000d80| 72 69 70 74 61 62 6c 65 | 46 69 6e 64 65 72 57 69 |riptable|FinderWi|
|00000d90| 6e 64 6f 77 46 53 53 70 | 65 63 20 28 53 74 72 69 |ndowFSSp|ec (Stri|
|00000da0| 6e 67 50 74 72 20 77 69 | 6e 64 6f 77 4e 61 6d 65 |ngPtr wi|ndowName|
|00000db0| 2c 20 46 53 53 70 65 63 | 20 2a 77 69 6e 64 6f 77 |, FSSpec| *window|
|00000dc0| 46 53 53 70 65 63 29 0d | 0d 2f 2a 09 41 20 72 6f |FSSpec).|./*.A ro|
|00000dd0| 75 74 69 6e 65 20 74 6f | 20 67 65 74 20 74 68 65 |utine to| get the|
|00000de0| 20 46 53 53 70 65 63 20 | 6f 66 20 61 20 77 69 6e | FSSpec |of a win|
|00000df0| 64 6f 77 20 28 62 79 20 | 6e 61 6d 65 20 6f 72 20 |dow (by |name or |
|00000e00| 62 79 20 70 6f 69 6e 74 | 29 20 75 73 69 6e 67 20 |by point|) using |
|00000e10| 74 68 65 20 47 65 74 44 | 61 74 61 20 41 70 70 6c |the GetD|ata Appl|
|00000e20| 65 20 45 76 65 6e 74 2e | 20 0d 09 49 74 20 74 72 |e Event.| ..It tr|
|00000e30| 69 65 73 20 69 74 27 73 | 20 62 65 73 74 20 74 6f |ies it's| best to|
|00000e40| 20 67 65 74 20 74 68 65 | 20 72 65 73 75 6c 74 20 | get the| result |
|00000e50| 69 6d 6d 65 64 69 61 74 | 65 6c 79 20 61 6e 64 20 |immediat|ely and |
|00000e60| 72 65 73 6f 72 74 73 20 | 74 6f 20 61 6c 6c 6f 77 |resorts |to allow|
|00000e70| 69 6e 67 20 74 68 65 20 | 73 68 6f 72 74 63 75 74 |ing the |shortcut|
|00000e80| 20 69 6e 20 74 68 65 20 | 41 45 53 65 6e 64 20 72 | in the |AESend r|
|00000e90| 6f 75 74 69 6e 65 20 77 | 68 65 72 65 20 74 68 65 |outine w|here the|
|00000ea0| 0d 09 65 76 65 6e 74 20 | 69 73 20 73 65 6e 74 20 |..event |is sent |
|00000eb0| 74 6f 20 74 68 65 20 63 | 75 72 72 65 6e 74 20 70 |to the c|urrent p|
|00000ec0| 72 6f 63 65 73 73 20 73 | 70 65 63 69 66 69 65 64 |rocess s|pecified|
|00000ed0| 20 62 79 20 22 6b 43 75 | 72 72 65 6e 74 50 72 6f | by "kCu|rrentPro|
|00000ee0| 63 65 73 73 22 20 69 6e | 20 74 68 65 20 50 72 6f |cess" in| the Pro|
|00000ef0| 63 65 73 73 53 65 72 69 | 61 6c 4e 75 6d 62 65 72 |cessSeri|alNumber|
|00000f00| 2e 0d 0d 09 20 49 6e 70 | 75 74 3a 09 77 69 6e 64 |.... Inp|ut:.wind|
|00000f10| 6f 77 4e 61 6d 65 20 2d | 20 6e 61 6d 65 20 6f 66 |owName -| name of|
|00000f20| 20 74 68 65 20 77 69 6e | 64 6f 77 20 28 70 61 73 | the win|dow (pas|
|00000f30| 63 61 6c 20 73 74 72 69 | 6e 67 2c 20 6f 66 20 63 |cal stri|ng, of c|
|00000f40| 6f 75 72 73 65 20 6f 72 | 20 6e 75 6c 6c 29 0d 09 |ourse or| null)..|
|00000f50| 20 49 6e 70 75 74 3a 20 | 77 69 6e 64 6f 77 46 53 | Input: |windowFS|
|00000f60| 53 70 65 63 20 2d 20 72 | 65 74 75 72 6e 73 20 74 |Spec - r|eturns t|
|00000f70| 68 65 20 46 53 53 70 65 | 63 20 6f 66 20 74 68 65 |he FSSpe|c of the|
|00000f80| 20 77 69 6e 64 6f 77 20 | 79 6f 75 20 72 65 71 75 | window |you requ|
|00000f90| 65 73 74 65 64 0d 09 20 | 49 6e 70 75 74 3a 09 75 |ested.. |Input:.u|
|00000fa0| 73 65 73 79 73 74 65 6d | 6d 6f 64 65 20 2d 20 61 |sesystem|mode - a|
|00000fb0| 20 42 6f 6f 6c 65 61 6e | 20 77 68 69 63 68 20 64 | Boolean| which d|
|00000fc0| 65 74 65 72 6d 69 6e 65 | 73 20 77 68 65 74 68 65 |etermine|s whethe|
|00000fd0| 72 20 74 68 65 20 73 79 | 73 74 65 6d 27 73 20 50 |r the sy|stem's P|
|00000fe0| 50 43 20 70 6f 72 74 20 | 77 69 6c 6c 20 62 65 20 |PC port |will be |
|00000ff0| 75 73 65 64 2e 0d 0d 09 | 4f 75 74 70 75 74 3a 09 |used....|Output:.|
|00001000| 65 72 72 6f 72 20 63 6f | 64 65 20 74 68 61 74 20 |error co|de that |
|00001010| 6f 63 63 75 72 65 64 2e | 20 2a 2f 0d 0d 7b 0d 09 |occured.| */..{..|
|00001020| 73 68 6f 72 74 09 09 09 | 09 65 72 72 6e 75 6d 20 |short...|.errnum |
|00001030| 3d 20 30 3b 0d 09 42 6f | 6f 6c 65 61 6e 09 09 09 |= 0;..Bo|olean...|
|00001040| 09 66 69 64 64 6c 65 77 | 69 74 68 41 35 3b 09 09 |.fiddlew|ithA5;..|
|00001050| 09 2f 2f 20 53 65 65 20 | 62 65 6c 6f 77 20 66 6f |.// See |below fo|
|00001060| 72 20 74 68 65 20 75 73 | 61 67 65 20 6f 66 20 74 |r the us|age of t|
|00001070| 68 65 20 41 35 20 76 61 | 72 69 61 62 6c 65 73 0d |he A5 va|riables.|
|00001080| 09 6c 6f 6e 67 09 09 09 | 09 73 61 76 65 41 35 3b |.long...|.saveA5;|
|00001090| 0d 09 4f 53 54 79 70 65 | 09 09 09 09 70 72 6f 70 |..OSType|....prop|
|000010a0| 64 65 73 63 72 69 70 74 | 6f 72 2c 20 72 65 73 75 |descript|or, resu|
|000010b0| 6c 74 64 65 73 63 72 69 | 70 74 6f 72 3b 0d 09 50 |ltdescri|ptor;..P|
|000010c0| 72 6f 63 65 73 73 53 65 | 72 69 61 6c 4e 75 6d 62 |rocessSe|rialNumb|
|000010d0| 65 72 09 74 61 72 67 65 | 74 70 73 6e 3b 0d 09 41 |er.targe|tpsn;..A|
|000010e0| 45 44 65 73 63 09 09 09 | 09 74 61 72 67 65 74 61 |EDesc...|.targeta|
|000010f0| 64 64 72 65 73 73 2c 20 | 70 72 6f 70 64 65 73 63 |ddress, |propdesc|
|00001100| 2c 20 77 69 6e 64 6f 77 | 64 65 73 63 2c 20 6e 75 |, window|desc, nu|
|00001110| 6c 6c 64 65 73 63 2c 20 | 64 69 72 65 63 74 64 65 |lldesc, |directde|
|00001120| 73 63 2c 20 72 65 73 75 | 6c 74 64 65 73 63 3b 0d |sc, resu|ltdesc;.|
|00001130| 09 41 70 70 6c 65 45 76 | 65 6e 74 09 09 09 6d 79 |.AppleEv|ent...my|
|00001140| 61 65 2c 20 6d 79 72 65 | 70 6c 79 3b 0d 09 0d 09 |ae, myre|ply;....|
|00001150| 70 72 6f 70 64 65 73 63 | 72 69 70 74 6f 72 20 3d |propdesc|riptor =|
|00001160| 20 70 43 6f 6e 74 61 69 | 6e 65 72 3b 0d 09 72 65 | pContai|ner;..re|
|00001170| 73 75 6c 74 64 65 73 63 | 72 69 70 74 6f 72 20 3d |sultdesc|riptor =|
|00001180| 20 74 79 70 65 46 53 53 | 3b 0d 09 69 66 20 28 47 | typeFSS|;..if (G|
|00001190| 65 74 46 69 6e 64 65 72 | 50 72 6f 63 65 73 73 28 |etFinder|Process(|
|000011a0| 26 74 61 72 67 65 74 70 | 73 6e 2c 20 6b 52 65 6c |&targetp|sn, kRel|
|000011b0| 61 74 69 76 65 46 69 6e | 64 65 72 50 53 4e 29 20 |ativeFin|derPSN) |
|000011c0| 3d 3d 20 6e 6f 45 72 72 | 29 20 0d 09 7b 0d 09 0d |== noErr|) ..{...|
|000011d0| 2f 2a 09 48 65 72 65 27 | 73 20 61 20 67 6f 6f 64 |/*.Here'|s a good|
|000011e0| 20 70 72 6f 62 6c 65 6d | 2e 20 49 66 20 77 65 20 | problem|. If we |
|000011f0| 73 68 6f 72 74 63 75 74 | 20 74 68 65 20 41 70 70 |shortcut| the App|
|00001200| 6c 65 20 45 76 65 6e 74 | 20 70 72 6f 63 65 73 73 |le Event| process|
|00001210| 69 6e 67 20 6d 65 63 68 | 61 6e 69 73 6d 20 62 79 |ing mech|anism by|
|00001220| 20 75 73 69 6e 67 20 74 | 68 65 20 72 65 6c 61 74 | using t|he relat|
|00001230| 69 76 65 0d 09 6b 43 75 | 72 72 65 6e 74 50 72 6f |ive..kCu|rrentPro|
|00001240| 63 65 73 73 20 69 6e 20 | 74 68 65 20 70 72 6f 63 |cess in |the proc|
|00001250| 65 73 73 20 73 65 72 69 | 61 6c 20 6e 75 6d 62 65 |ess seri|al numbe|
|00001260| 72 20 74 6f 20 67 65 74 | 20 74 6f 20 74 68 65 20 |r to get| to the |
|00001270| 46 69 6e 64 65 72 27 73 | 20 27 47 65 74 20 44 61 |Finder's| 'Get Da|
|00001280| 74 61 27 20 72 6f 75 74 | 69 6e 65 20 74 68 69 73 |ta' rout|ine this|
|00001290| 0d 09 77 6f 72 6b 73 20 | 66 69 6e 65 20 69 66 20 |..works |fine if |
|000012a0| 74 68 65 20 41 35 20 72 | 65 67 69 73 74 65 72 20 |the A5 r|egister |
|000012b0| 69 73 20 74 68 61 74 20 | 6f 66 20 74 68 65 20 46 |is that |of the F|
|000012c0| 69 6e 64 65 72 2e 20 48 | 6f 77 65 76 65 72 2c 20 |inder. H|owever, |
|000012d0| 4d 61 67 69 63 20 4d 65 | 6e 75 20 63 61 6c 6c 73 |Magic Me|nu calls|
|000012e0| 20 74 68 69 73 20 72 6f | 75 74 69 6e 65 20 66 72 | this ro|utine fr|
|000012f0| 6f 6d 0d 09 61 20 70 61 | 74 63 68 20 77 69 74 68 |om..a pa|tch with|
|00001300| 69 6e 20 5f 4d 65 6e 75 | 4b 65 79 20 6f 72 20 5f |in _Menu|Key or _|
|00001310| 4d 65 6e 75 53 65 6c 65 | 63 74 20 61 6e 64 20 74 |MenuSele|ct and t|
|00001320| 68 65 20 50 72 6f 63 65 | 73 73 20 4d 61 6e 61 67 |he Proce|ss Manag|
|00001330| 65 72 20 70 61 74 63 68 | 65 73 20 6f 76 65 72 20 |er patch|es over |
|00001340| 74 68 65 73 65 20 72 6f | 75 74 69 6e 65 73 2e 20 |these ro|utines. |
|00001350| 49 74 0d 09 70 75 74 73 | 20 69 74 73 20 6f 77 6e |It..puts| its own|
|00001360| 20 41 35 20 69 6e 20 62 | 75 74 20 64 6f 65 73 6e | A5 in b|ut doesn|
|00001370| 27 74 20 6d 6f 64 69 66 | 79 20 74 68 65 20 6c 6f |'t modif|y the lo|
|00001380| 77 2d 6d 65 6d 6f 72 79 | 20 67 6c 6f 62 61 6c 2e |w-memory| global.|
|00001390| 20 53 6f 2e 2e 2e 20 6a | 75 73 74 20 74 6f 20 62 | So... j|ust to b|
|000013a0| 65 20 73 75 72 65 20 74 | 68 61 74 20 77 65 27 76 |e sure t|hat we'v|
|000013b0| 65 0d 09 67 6f 74 20 74 | 68 65 20 63 6f 72 72 65 |e..got t|he corre|
|000013c0| 63 74 20 41 35 20 77 65 | 27 6c 6c 20 72 65 73 74 |ct A5 we|'ll rest|
|000013d0| 6f 72 65 20 74 68 65 20 | 41 35 20 77 6f 72 6c 64 |ore the |A5 world|
|000013e0| 20 69 66 20 77 65 27 72 | 65 20 75 73 69 6e 67 20 | if we'r|e using |
|000013f0| 74 68 65 20 72 65 6c 61 | 74 69 76 65 20 70 72 6f |the rela|tive pro|
|00001400| 63 65 73 73 20 73 65 72 | 69 61 6c 20 6e 75 6d 62 |cess ser|ial numb|
|00001410| 65 72 2e 0d 09 4f 74 68 | 65 72 77 69 73 65 20 74 |er...Oth|erwise t|
|00001420| 68 65 20 41 70 70 6c 65 | 20 45 76 65 6e 74 20 69 |he Apple| Event i|
|00001430| 73 20 73 65 6e 74 20 76 | 69 61 20 74 68 65 20 45 |s sent v|ia the E|
|00001440| 76 65 6e 74 20 4d 61 6e | 61 67 65 72 20 61 6e 64 |vent Man|ager and|
|00001450| 20 74 68 65 20 41 35 20 | 72 65 67 69 73 74 65 72 | the A5 |register|
|00001460| 20 77 69 6c 6c 20 62 65 | 20 63 6f 72 72 65 63 74 | will be| correct|
|00001470| 2e 20 2a 2f 0d 0d 09 09 | 66 69 64 64 6c 65 77 69 |. */....|fiddlewi|
|00001480| 74 68 41 35 20 3d 20 49 | 73 52 65 6c 61 74 69 76 |thA5 = I|sRelativ|
|00001490| 65 50 72 6f 63 65 73 73 | 53 65 72 69 61 6c 4e 75 |eProcess|SerialNu|
|000014a0| 6d 62 65 72 28 26 74 61 | 72 67 65 74 70 73 6e 29 |mber(&ta|rgetpsn)|
|000014b0| 3b 0d 09 09 69 66 20 28 | 66 69 64 64 6c 65 77 69 |;...if (|fiddlewi|
|000014c0| 74 68 41 35 29 20 0d 09 | 09 09 73 61 76 65 41 35 |thA5) ..|..saveA5|
|000014d0| 20 3d 20 53 65 74 43 75 | 72 72 65 6e 74 41 35 28 | = SetCu|rrentA5(|
|000014e0| 29 3b 0d 0d 2f 2a 09 54 | 68 65 20 6c 61 74 65 72 |);../*.T|he later|
|000014f0| 20 66 69 6e 64 65 72 73 | 20 64 6f 20 61 6c 6c 20 | finders| do all |
|00001500| 73 6f 72 74 73 20 6f 66 | 20 63 6f 6f 6c 20 74 68 |sorts of| cool th|
|00001510| 72 65 61 64 69 6e 67 20 | 73 74 75 66 66 2e 20 20 |reading |stuff. |
|00001520| 42 75 74 20 69 74 20 6d | 61 6b 65 73 20 69 74 20 |But it m|akes it |
|00001530| 69 6d 70 6f 73 73 69 62 | 6c 65 20 74 6f 20 73 65 |impossib|le to se|
|00001540| 6e 64 20 41 70 70 6c 65 | 20 45 76 65 6e 74 73 20 |nd Apple| Events |
|00001550| 61 74 0d 09 74 68 69 73 | 20 70 6f 69 6e 74 2e 20 |at..this| point. |
|00001560| 20 57 65 27 72 65 20 67 | 6f 69 6e 67 20 74 6f 20 | We're g|oing to |
|00001570| 6b 69 6c 6c 20 74 68 61 | 74 20 68 61 6e 64 6c 65 |kill tha|t handle|
|00001580| 72 2e 20 2a 2f 0d 0d 09 | 09 55 6e 69 76 65 72 73 |r. */...|.Univers|
|00001590| 61 6c 50 72 6f 63 50 74 | 72 09 6f 6c 64 48 61 6e |alProcPt|r.oldHan|
|000015a0| 64 6c 65 72 20 3d 20 4e | 55 4c 4c 3b 0d 09 09 4f |dler = N|ULL;...O|
|000015b0| 53 45 72 72 09 65 72 72 | 3b 0d 0d 09 09 65 72 72 |SErr.err|;....err|
|000015c0| 20 3d 20 41 45 47 65 74 | 53 70 65 63 69 61 6c 48 | = AEGet|SpecialH|
|000015d0| 61 6e 64 6c 65 72 28 6b | 65 79 50 72 65 44 69 73 |andler(k|eyPreDis|
|000015e0| 70 61 74 63 68 2c 20 26 | 6f 6c 64 48 61 6e 64 6c |patch, &|oldHandl|
|000015f0| 65 72 2c 20 66 61 6c 73 | 65 29 3b 0d 09 09 69 66 |er, fals|e);...if|
|00001600| 20 28 21 65 72 72 20 26 | 26 20 6f 6c 64 48 61 6e | (!err &|& oldHan|
|00001610| 64 6c 65 72 29 0d 09 09 | 09 65 72 72 20 3d 20 41 |dler)...|.err = A|
|00001620| 45 52 65 6d 6f 76 65 53 | 70 65 63 69 61 6c 48 61 |ERemoveS|pecialHa|
|00001630| 6e 64 6c 65 72 28 6b 65 | 79 50 72 65 44 69 73 70 |ndler(ke|yPreDisp|
|00001640| 61 74 63 68 2c 20 6f 6c | 64 48 61 6e 64 6c 65 72 |atch, ol|dHandler|
|00001650| 2c 20 66 61 6c 73 65 29 | 3b 0d 0d 2f 2a 09 54 68 |, false)|;../*.Th|
|00001660| 65 20 66 6f 6c 6c 6f 77 | 69 6e 67 20 69 66 20 73 |e follow|ing if s|
|00001670| 74 61 74 65 6d 65 6e 74 | 20 69 73 20 74 68 65 20 |tatement| is the |
|00001680| 67 75 74 73 20 6f 66 20 | 74 68 65 20 47 65 74 53 |guts of |the GetS|
|00001690| 63 72 69 70 74 61 62 6c | 65 46 69 6e 64 65 72 53 |criptabl|eFinderS|
|000016a0| 65 6c 65 63 74 69 6f 6e | 20 72 6f 75 74 69 6e 65 |election| routine|
|000016b0| 2e 20 49 74 0d 09 63 6f | 6d 70 6f 73 65 73 20 74 |. It..co|mposes t|
|000016c0| 68 65 20 41 70 70 6c 65 | 45 76 65 6e 74 20 61 6e |he Apple|Event an|
|000016d0| 64 20 66 69 6c 6c 73 20 | 69 6e 20 61 6c 6c 20 74 |d fills |in all t|
|000016e0| 68 65 20 63 6f 72 72 65 | 63 74 20 70 61 72 61 6d |he corre|ct param|
|000016f0| 65 74 65 72 73 20 61 6e | 64 20 6f 70 74 69 6f 6e |eters an|d option|
|00001700| 73 2e 20 54 68 65 6e 20 | 69 74 20 63 61 6c 6c 73 |s. Then |it calls|
|00001710| 0d 09 74 68 65 20 46 69 | 6e 64 65 72 20 74 6f 20 |..the Fi|nder to |
|00001720| 67 65 74 20 74 68 65 20 | 69 6e 66 6f 72 6d 61 74 |get the |informat|
|00001730| 69 6f 6e 20 61 6e 64 20 | 65 78 74 72 61 63 74 73 |ion and |extracts|
|00001740| 20 74 68 65 20 72 65 74 | 75 72 6e 65 64 20 64 61 | the ret|urned da|
|00001750| 74 61 20 66 72 6f 6d 20 | 74 68 65 20 64 65 73 63 |ta from |the desc|
|00001760| 72 69 70 74 6f 72 20 6c | 69 73 74 2e 0d 09 49 74 |riptor l|ist...It|
|00001770| 20 70 75 74 73 20 74 68 | 65 20 69 74 65 6d 73 20 | puts th|e items |
|00001780| 69 6e 20 61 6e 20 46 53 | 53 70 65 63 41 72 72 61 |in an FS|SpecArra|
|00001790| 79 48 61 6e 64 6c 65 2e | 20 49 66 20 61 6e 20 65 |yHandle.| If an e|
|000017a0| 72 72 6f 72 20 6f 63 63 | 75 72 73 20 69 74 20 6a |rror occ|urs it j|
|000017b0| 75 73 74 20 72 65 74 75 | 72 6e 73 20 6e 69 6c 2e |ust retu|rns nil.|
|000017c0| 20 4e 6f 74 65 20 74 68 | 61 74 0d 09 74 68 69 73 | Note th|at..this|
|000017d0| 20 72 6f 75 74 69 6e 65 | 20 75 73 65 73 20 61 6e | routine| uses an|
|000017e0| 20 61 73 73 69 67 6e 6d | 65 6e 74 20 66 6f 6c 6c | assignm|ent foll|
|000017f0| 6f 77 65 64 20 62 79 20 | 61 20 63 6f 6d 70 61 72 |owed by |a compar|
|00001800| 69 73 6f 6e 20 77 68 69 | 63 68 20 61 6c 74 68 6f |ison whi|ch altho|
|00001810| 75 67 68 20 6e 6f 74 20 | 67 6f 6f 64 20 6c 6f 67 |ugh not |good log|
|00001820| 69 63 20 61 6c 6c 6f 77 | 73 0d 09 74 68 69 73 20 |ic allow|s..this |
|00001830| 72 6f 75 74 69 6e 65 20 | 74 6f 20 62 65 20 63 6f |routine |to be co|
|00001840| 6d 70 72 65 73 73 65 64 | 20 69 6e 74 6f 20 61 20 |mpressed| into a |
|00001850| 73 69 6e 67 6c 65 20 69 | 66 20 73 74 61 74 65 6d |single i|f statem|
|00001860| 65 6e 74 20 6c 69 6e 6b | 65 64 20 77 69 74 68 20 |ent link|ed with |
|00001870| 74 65 72 6d 69 6e 61 74 | 69 6e 67 20 61 6e 64 20 |terminat|ing and |
|00001880| 63 6f 6d 70 61 72 69 73 | 6f 6e 73 0d 09 77 68 69 |comparis|ons..whi|
|00001890| 6c 73 74 20 63 6f 6c 6c | 65 63 74 69 6e 67 20 74 |lst coll|ecting t|
|000018a0| 68 65 20 65 72 72 6f 72 | 20 6e 75 6d 62 65 72 20 |he error| number |
|000018b0| 74 68 61 74 20 6f 63 63 | 75 72 72 65 64 2e 20 2a |that occ|urred. *|
|000018c0| 2f 0d 0d 09 2f 2f 20 66 | 69 72 73 74 20 73 65 74 |/...// f|irst set|
|000018d0| 75 70 20 74 68 65 20 41 | 45 20 69 74 73 65 6c 66 |up the A|E itself|
|000018e0| 0d 09 09 45 72 72 6f 72 | 45 78 69 74 28 65 72 72 |...Error|Exit(err|
|000018f0| 6e 75 6d 20 3d 20 41 45 | 43 72 65 61 74 65 44 65 |num = AE|CreateDe|
|00001900| 73 63 28 74 79 70 65 50 | 72 6f 63 65 73 73 53 65 |sc(typeP|rocessSe|
|00001910| 72 69 61 6c 4e 75 6d 62 | 65 72 2c 20 26 74 61 72 |rialNumb|er, &tar|
|00001920| 67 65 74 70 73 6e 2c 20 | 73 69 7a 65 6f 66 28 74 |getpsn, |sizeof(t|
|00001930| 61 72 67 65 74 70 73 6e | 29 2c 20 26 74 61 72 67 |argetpsn|), &targ|
|00001940| 65 74 61 64 64 72 65 73 | 73 29 29 3b 0d 09 09 45 |etaddres|s));...E|
|00001950| 72 72 6f 72 45 78 69 74 | 28 65 72 72 6e 75 6d 20 |rrorExit|(errnum |
|00001960| 3d 20 41 45 43 72 65 61 | 74 65 41 70 70 6c 65 45 |= AECrea|teAppleE|
|00001970| 76 65 6e 74 28 6b 41 45 | 43 6f 72 65 53 75 69 74 |vent(kAE|CoreSuit|
|00001980| 65 2c 20 6b 41 45 47 65 | 74 44 61 74 61 2c 20 26 |e, kAEGe|tData, &|
|00001990| 74 61 72 67 65 74 61 64 | 64 72 65 73 73 2c 20 6b |targetad|dress, k|
|000019a0| 41 75 74 6f 47 65 6e 65 | 72 61 74 65 52 65 74 75 |AutoGene|rateRetu|
|000019b0| 72 6e 49 44 2c 20 6b 41 | 6e 79 54 72 61 6e 73 61 |rnID, kA|nyTransa|
|000019c0| 63 74 69 6f 6e 49 44 2c | 20 26 6d 79 61 65 29 29 |ctionID,| &myae))|
|000019d0| 3b 0d 09 09 45 72 72 6f | 72 45 78 69 74 28 65 72 |;...Erro|rExit(er|
|000019e0| 72 6e 75 6d 20 3d 20 41 | 45 44 69 73 70 6f 73 65 |rnum = A|EDispose|
|000019f0| 44 65 73 63 28 26 74 61 | 72 67 65 74 61 64 64 72 |Desc(&ta|rgetaddr|
|00001a00| 65 73 73 29 29 3b 0d 09 | 09 0d 09 2f 2f 20 6e 6f |ess));..|...// no|
|00001a10| 77 20 63 72 65 61 74 65 | 20 74 68 65 20 6f 62 6a |w create| the obj|
|00001a20| 65 63 74 20 73 70 65 63 | 69 66 69 65 72 20 66 6f |ect spec|ifier fo|
|00001a30| 72 20 22 63 6f 6e 74 61 | 69 6e 65 72 20 6f 66 20 |r "conta|iner of |
|00001a40| 77 69 6e 64 6f 77 20 3c | 78 3e 22 0d 09 2f 2f 20 |window <|x>"..// |
|00001a50| 61 6e 64 20 61 64 64 20 | 69 74 20 74 6f 20 74 68 |and add |it to th|
|00001a60| 65 20 41 45 09 0d 09 09 | 45 72 72 6f 72 45 78 69 |e AE....|ErrorExi|
|00001a70| 74 28 65 72 72 6e 75 6d | 20 3d 20 41 45 43 72 65 |t(errnum| = AECre|
|00001a80| 61 74 65 44 65 73 63 28 | 74 79 70 65 4e 75 6c 6c |ateDesc(|typeNull|
|00001a90| 2c 20 6e 69 6c 2c 20 30 | 2c 20 26 6e 75 6c 6c 64 |, nil, 0|, &nulld|
|00001aa0| 65 73 63 29 29 3b 20 0d | 09 09 45 72 72 6f 72 45 |esc)); .|..ErrorE|
|00001ab0| 78 69 74 28 65 72 72 6e | 75 6d 20 3d 20 41 45 43 |xit(errn|um = AEC|
|00001ac0| 72 65 61 74 65 44 65 73 | 63 28 74 79 70 65 54 79 |reateDes|c(typeTy|
|00001ad0| 70 65 2c 20 26 70 72 6f | 70 64 65 73 63 72 69 70 |pe, &pro|pdescrip|
|00001ae0| 74 6f 72 2c 20 73 69 7a | 65 6f 66 28 70 72 6f 70 |tor, siz|eof(prop|
|00001af0| 64 65 73 63 72 69 70 74 | 6f 72 29 2c 20 26 70 72 |descript|or), &pr|
|00001b00| 6f 70 64 65 73 63 29 29 | 3b 20 0d 09 09 0d 09 09 |opdesc))|; ......|
|00001b10| 41 45 44 65 73 63 09 6e | 61 6d 65 64 65 73 63 3b |AEDesc.n|amedesc;|
|00001b20| 0d 09 09 09 0d 09 09 45 | 72 72 6f 72 45 78 69 74 |.......E|rrorExit|
|00001b30| 28 65 72 72 6e 75 6d 20 | 3d 20 41 45 43 72 65 61 |(errnum |= AECrea|
|00001b40| 74 65 44 65 73 63 28 74 | 79 70 65 43 68 61 72 2c |teDesc(t|ypeChar,|
|00001b50| 20 28 50 74 72 29 26 77 | 69 6e 64 6f 77 4e 61 6d | (Ptr)&w|indowNam|
|00001b60| 65 5b 31 5d 2c 20 77 69 | 6e 64 6f 77 4e 61 6d 65 |e[1], wi|ndowName|
|00001b70| 5b 30 5d 2c 20 26 6e 61 | 6d 65 64 65 73 63 29 29 |[0], &na|medesc))|
|00001b80| 3b 09 09 09 0d 09 09 45 | 72 72 6f 72 45 78 69 74 |;......E|rrorExit|
|00001b90| 28 65 72 72 6e 75 6d 20 | 3d 20 43 72 65 61 74 65 |(errnum |= Create|
|00001ba0| 4f 62 6a 53 70 65 63 69 | 66 69 65 72 28 63 57 69 |ObjSpeci|fier(cWi|
|00001bb0| 6e 64 6f 77 2c 20 26 6e | 75 6c 6c 64 65 73 63 2c |ndow, &n|ulldesc,|
|00001bc0| 20 66 6f 72 6d 4e 61 6d | 65 2c 20 26 6e 61 6d 65 | formNam|e, &name|
|00001bd0| 64 65 73 63 2c 20 66 61 | 6c 73 65 2c 20 26 77 69 |desc, fa|lse, &wi|
|00001be0| 6e 64 6f 77 64 65 73 63 | 29 29 3b 0d 09 09 45 72 |ndowdesc|));...Er|
|00001bf0| 72 6f 72 45 78 69 74 28 | 65 72 72 6e 75 6d 20 3d |rorExit(|errnum =|
|00001c00| 20 41 45 44 69 73 70 6f | 73 65 44 65 73 63 28 26 | AEDispo|seDesc(&|
|00001c10| 6e 61 6d 65 64 65 73 63 | 29 29 3b 0d 09 09 0d 09 |namedesc|));.....|
|00001c20| 09 45 72 72 6f 72 45 78 | 69 74 28 65 72 72 6e 75 |.ErrorEx|it(errnu|
|00001c30| 6d 20 3d 20 43 72 65 61 | 74 65 4f 62 6a 53 70 65 |m = Crea|teObjSpe|
|00001c40| 63 69 66 69 65 72 28 63 | 50 72 6f 70 65 72 74 79 |cifier(c|Property|
|00001c50| 2c 20 26 77 69 6e 64 6f | 77 64 65 73 63 2c 20 66 |, &windo|wdesc, f|
|00001c60| 6f 72 6d 50 72 6f 70 65 | 72 74 79 49 44 2c 20 26 |ormPrope|rtyID, &|
|00001c70| 70 72 6f 70 64 65 73 63 | 2c 20 74 72 75 65 2c 20 |propdesc|, true, |
|00001c80| 26 64 69 72 65 63 74 64 | 65 73 63 29 29 3b 20 0d |&directd|esc)); .|
|00001c90| 09 09 45 72 72 6f 72 45 | 78 69 74 28 65 72 72 6e |..ErrorE|xit(errn|
|00001ca0| 75 6d 20 3d 20 41 45 50 | 75 74 50 61 72 61 6d 44 |um = AEP|utParamD|
|00001cb0| 65 73 63 28 26 6d 79 61 | 65 2c 20 6b 65 79 44 69 |esc(&mya|e, keyDi|
|00001cc0| 72 65 63 74 4f 62 6a 65 | 63 74 2c 20 26 64 69 72 |rectObje|ct, &dir|
|00001cd0| 65 63 74 64 65 73 63 29 | 29 3b 20 0d 09 09 45 72 |ectdesc)|); ...Er|
|00001ce0| 72 6f 72 45 78 69 74 28 | 65 72 72 6e 75 6d 20 3d |rorExit(|errnum =|
|00001cf0| 20 41 45 44 69 73 70 6f | 73 65 44 65 73 63 28 26 | AEDispo|seDesc(&|
|00001d00| 6e 75 6c 6c 64 65 73 63 | 29 29 3b 0d 09 09 45 72 |nulldesc|));...Er|
|00001d10| 72 6f 72 45 78 69 74 28 | 65 72 72 6e 75 6d 20 3d |rorExit(|errnum =|
|00001d20| 20 41 45 44 69 73 70 6f | 73 65 44 65 73 63 28 26 | AEDispo|seDesc(&|
|00001d30| 70 72 6f 70 64 65 73 63 | 29 29 3b 0d 09 09 45 72 |propdesc|));...Er|
|00001d40| 72 6f 72 45 78 69 74 28 | 65 72 72 6e 75 6d 20 3d |rorExit(|errnum =|
|00001d50| 20 41 45 44 69 73 70 6f | 73 65 44 65 73 63 28 26 | AEDispo|seDesc(&|
|00001d60| 77 69 6e 64 6f 77 64 65 | 73 63 29 29 3b 0d 09 09 |windowde|sc));...|
|00001d70| 45 72 72 6f 72 45 78 69 | 74 28 65 72 72 6e 75 6d |ErrorExi|t(errnum|
|00001d80| 20 3d 20 41 45 44 69 73 | 70 6f 73 65 44 65 73 63 | = AEDis|poseDesc|
|00001d90| 28 26 64 69 72 65 63 74 | 64 65 73 63 29 29 3b 20 |(&direct|desc)); |
|00001da0| 0d 0d 09 2f 2f 20 73 65 | 6e 64 20 74 68 65 20 65 |...// se|nd the e|
|00001db0| 76 65 6e 74 09 0d 09 09 | 45 72 72 6f 72 45 78 69 |vent....|ErrorExi|
|00001dc0| 74 28 65 72 72 6e 75 6d | 20 3d 20 41 45 53 65 6e |t(errnum| = AESen|
|00001dd0| 64 28 26 6d 79 61 65 2c | 20 26 6d 79 72 65 70 6c |d(&myae,| &myrepl|
|00001de0| 79 2c 20 6b 41 45 57 61 | 69 74 52 65 70 6c 79 20 |y, kAEWa|itReply |
|00001df0| 2b 20 6b 41 45 44 6f 6e | 74 52 65 63 6f 72 64 2c |+ kAEDon|tRecord,|
|00001e00| 20 6b 41 45 4e 65 76 65 | 72 49 6e 74 65 72 61 63 | kAENeve|rInterac|
|00001e10| 74 2c 20 6b 41 45 44 65 | 66 61 75 6c 74 54 69 6d |t, kAEDe|faultTim|
|00001e20| 65 6f 75 74 2c 20 6e 69 | 6c 2c 20 6e 69 6c 29 29 |eout, ni|l, nil))|
|00001e30| 3b 20 0d 0d 09 2f 2f 20 | 67 65 74 20 74 68 65 20 |; ...// |get the |
|00001e40| 72 65 73 75 6c 74 0d 09 | 09 45 72 72 6f 72 45 78 |result..|.ErrorEx|
|00001e50| 69 74 28 65 72 72 6e 75 | 6d 20 3d 20 41 45 47 65 |it(errnu|m = AEGe|
|00001e60| 74 50 61 72 61 6d 44 65 | 73 63 28 26 6d 79 72 65 |tParamDe|sc(&myre|
|00001e70| 70 6c 79 2c 20 6b 65 79 | 41 45 52 65 73 75 6c 74 |ply, key|AEResult|
|00001e80| 2c 20 74 79 70 65 46 53 | 53 2c 20 26 72 65 73 75 |, typeFS|S, &resu|
|00001e90| 6c 74 64 65 73 63 29 29 | 3b 20 0d 09 09 2a 77 69 |ltdesc))|; ...*wi|
|00001ea0| 6e 64 6f 77 46 53 53 70 | 65 63 20 3d 20 2a 2a 28 |ndowFSSp|ec = **(|
|00001eb0| 46 53 53 70 65 63 20 2a | 2a 29 72 65 73 75 6c 74 |FSSpec *|*)result|
|00001ec0| 64 65 73 63 2e 64 61 74 | 61 48 61 6e 64 6c 65 3b |desc.dat|aHandle;|
|00001ed0| 0d 09 0d 09 2f 2f 20 61 | 6e 64 20 66 69 6e 61 6c |....// a|nd final|
|00001ee0| 20 64 69 73 70 6f 73 61 | 6c 09 0d 09 09 45 72 72 | disposa|l....Err|
|00001ef0| 6f 72 45 78 69 74 28 65 | 72 72 6e 75 6d 20 3d 20 |orExit(e|rrnum = |
|00001f00| 41 45 44 69 73 70 6f 73 | 65 44 65 73 63 28 26 72 |AEDispos|eDesc(&r|
|00001f10| 65 73 75 6c 74 64 65 73 | 63 29 29 3b 0d 09 09 45 |esultdes|c));...E|
|00001f20| 72 72 6f 72 45 78 69 74 | 28 65 72 72 6e 75 6d 20 |rrorExit|(errnum |
|00001f30| 3d 20 41 45 44 69 73 70 | 6f 73 65 44 65 73 63 28 |= AEDisp|oseDesc(|
|00001f40| 26 6d 79 72 65 70 6c 79 | 29 29 3b 20 0d 09 20 09 |&myreply|)); .. .|
|00001f50| 45 72 72 6f 72 45 78 69 | 74 28 65 72 72 6e 75 6d |ErrorExi|t(errnum|
|00001f60| 20 3d 20 41 45 44 69 73 | 70 6f 73 65 44 65 73 63 | = AEDis|poseDesc|
|00001f70| 28 26 6d 79 61 65 29 29 | 3b 20 0d 0d 09 09 69 66 |(&myae))|; ....if|
|00001f80| 20 28 6f 6c 64 48 61 6e | 64 6c 65 72 29 09 2f 2f | (oldHan|dler).//|
|00001f90| 75 6e 6b 69 6c 6c 20 74 | 68 61 74 20 68 61 6e 64 |unkill t|hat hand|
|00001fa0| 6c 65 72 0d 09 09 7b 0d | 09 09 09 65 72 72 20 3d |ler...{.|...err =|
|00001fb0| 20 41 45 49 6e 73 74 61 | 6c 6c 53 70 65 63 69 61 | AEInsta|llSpecia|
|00001fc0| 6c 48 61 6e 64 6c 65 72 | 28 6b 65 79 50 72 65 44 |lHandler|(keyPreD|
|00001fd0| 69 73 70 61 74 63 68 2c | 20 6f 6c 64 48 61 6e 64 |ispatch,| oldHand|
|00001fe0| 6c 65 72 2c 20 66 61 6c | 73 65 29 3b 0d 09 09 7d |ler, fal|se);...}|
|00001ff0| 0d 09 09 0d 0d 0d 09 09 | 69 66 20 28 66 69 64 64 |........|if (fidd|
|00002000| 6c 65 77 69 74 68 41 35 | 29 20 0d 09 09 09 53 65 |lewithA5|) ....Se|
|00002010| 74 41 35 28 73 61 76 65 | 41 35 29 3b 09 09 09 2f |tA5(save|A5);.../|
|00002020| 2f 20 66 69 78 20 69 74 | 20 75 70 20 66 6f 72 20 |/ fix it| up for |
|00002030| 63 72 79 69 6e 67 20 6f | 75 74 20 6c 6f 75 64 21 |crying o|ut loud!|
|00002040| 0d 09 7d 0d 0d 65 78 69 | 74 3a 0d 09 72 65 74 75 |..}..exi|t:..retu|
|00002050| 72 6e 28 65 72 72 6e 75 | 6d 29 3b 09 09 09 2f 2f |rn(errnu|m);...//|
|00002060| 20 74 68 65 20 72 65 73 | 75 6c 74 0d 7d 0d 0d 0d | the res|ult.}...|
|00002070| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002080| 00 00 01 00 00 00 01 54 | 00 00 00 54 00 00 00 46 |.......T|...T...F|
|00002090| 00 00 00 00 ff fd 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000020a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000020b0| 0c 54 65 73 74 46 69 6e | 64 65 72 2e 63 6e 67 68 |.TestFin|der.cngh|
|000020c0| c4 49 63 6f 6e 73 69 6e | 66 6f 2e 64 29 69 74 72 |.Iconsin|fo.d)itr|
|000020d0| 02 00 54 45 58 54 43 57 | 49 45 00 00 00 00 00 00 |..TEXTCW|IE......|
|000020e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000020f0| 00 00 b1 a0 88 d8 00 00 | 3c 5c 00 00 01 9a 00 00 |........|<\......|
|00002100| 00 00 00 00 00 00 00 00 | 00 00 01 2d 25 01 43 41 |........|...-%.CA|
|00002110| 52 4f 54 45 58 54 01 00 | 00 00 00 00 00 00 00 00 |ROTEXT..|........|
|00002120| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002130| 00 00 00 00 01 c7 25 01 | 43 52 4b 74 64 70 63 6e |......%.|CRKtdpcn|
|00002140| 06 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002150| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 01 12 |........|........|
|00002160| 25 01 43 57 49 45 44 45 | 58 45 04 00 00 00 00 00 |%.CWIEDE|XE......|
|00002170| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002180| 00 00 00 48 00 09 4d 6f | 6e 61 63 6f 00 00 00 00 |...H..Mo|naco....|
|00002190| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000021a0| 00 00 00 00 00 00 00 03 | 00 04 00 83 00 99 02 9d |........|........|
|000021b0| 03 de 00 83 00 99 02 9d | 03 de b5 78 d1 9f 00 00 |........|...x....|
|000021c0| 03 38 00 00 03 38 00 00 | 02 44 01 00 00 00 00 04 |.8...8..|.D......|
|000021d0| 00 01 00 01 00 00 01 00 | 00 00 01 54 00 00 00 54 |........|...T...T|
|000021e0| 00 00 00 46 06 b1 76 00 | 02 ca 00 00 00 1c 00 46 |...F..v.|.......F|
|000021f0| 00 01 4d 50 53 52 00 00 | 00 12 4d 57 42 42 00 00 |..MPSR..|..MWBB..|
|00002200| 00 1e 03 ed ff ff 00 00 | 00 00 00 00 00 00 03 f0 |........|........|
|00002210| ff ff 00 00 00 4c 00 00 | 00 00 00 00 00 00 00 00 |.....L..|........|
|00002220| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002230| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002240| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002250| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002260| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002270| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+